home *** CD-ROM | disk | FTP | other *** search
/ Celestin Apprentice 4 / Apprentice-Release4.iso / Source Code / Libraries / Apache 1.0 / CHANGES next >
Text File  |  1995-12-04  |  4KB  |  93 lines

  1. New features with this release, as extensions of the Apache functionality
  2. (see also more detailed CHANGES file) in the source directory.
  3.  
  4. *) API for server extensions --- see src/API.html for an overview.  Most
  5.    server functionality (including includes, CGI, and most forms of access
  6.    control) are actually implemented as API-conformant modules.
  7.  
  8.    The API is not yet quite stable (see src/TODO for some possible
  9.    changes), but anything done now will be easily adapted for future
  10.    versions --- after all, we have more modules to adapt than you do.
  11.  
  12. *) <VirtualHost> is more general --- just about any srm.conf or
  13.    httpd.conf command can go in a <Virtualhost> section, with the
  14.    following specific exceptions: ServerType, UserId, GroupId,
  15.    StartServers, MaxRequestsPerChild, BindAddress, PidFile,
  16.    TypesConfig, ServerRoot.  
  17.  
  18. *) Support for content negotiation of languages through MultiViews
  19.    (*.fr, *.de, *.en suffixes), via the new AddLanguage and LanguagePriority
  20.    commands (code written by Francois Guillaume).
  21.  
  22. *) Significant internal cleanups and rearrangements.  The two externally
  23.    visible consequences of this are that just about all of the unchecked
  24.    fixed limits are gone, and that the server is somewhat pickier about
  25.    config file syntax (noting and complaining about extraneous command
  26.    arguments or other stuff at the end of command lines).
  27.  
  28. *) XBITHACK is a run-time option, and can be selectively enabled per
  29.    directory --- the -DXBITHACK compile-time option just changes the
  30.    default.  The command which configures it is "XBitHack", which is
  31.    allowed everywhere "Options" is; this takes an argument ---
  32.    "XBitHack Off" turns it off; "XBitHack On" gets you the NCSA
  33.    -DXBITHACK behavior; and "XBitHack Full" gets you the Apache GXBIT
  34.    stuff on top of that.  (-DXBITHACK makes "Full" the default;
  35.    otherwise, it defaults "Off").
  36.  
  37. *) TransferLog can specify a program which gets the log entries piped to it,
  38.    a la 'TransferLog "| /var/www/my-perl-script -arg valu"' --- this should
  39.    give the same SIGTERM/pause/SIGKILL treatment to the logging process on
  40.    server restarts that a CGI script gets on an aborted request.  NB the
  41.    server is counting on the logging process to work, and will probably hang
  42.    or worse if it dies.
  43.  
  44. We also have a few experimental modules which indicate directions for
  45. a future release (NB these experimental, meaning they haven't been
  46. tested as much as the rest of the code here; also, they are not in
  47. final form yet, and what appears as supported may not be quite what
  48. you see now, though it will support at least the same functionality):
  49.  
  50. *) Configurable logging module --- this is a replacement for the
  51.    standard plane-jane Common Log Format code, which supports a
  52.    LogFormat directive which allows you to control the formatting of
  53.    entries in the TransferLog, and add some new items if you like (in
  54.    particular, Referer and User-Agent).
  55.  
  56. *) The optional dld module is a proof-of-concept piece of code which 
  57.    loads other modules into the server as it is configuring itself (the
  58.    first time only --- for now, rereading the config files cannot
  59.    affect the state of loaded modules), using the GNU dynamic linking
  60.    library, DLD.  It isn't compiled into the server by default, since
  61.    not everyone has DLD, but it works when I try it.  (Famous last
  62.    words). 
  63.  
  64.    This module defines two commands:
  65.  
  66.      LoadModule module_sym filename
  67.      LoadFile filename filename filename...
  68.      
  69.    LoadModule tells the server to link in the file "filename", and add
  70.    the module structure named "module_sym" to the list of active
  71.    modules (this is the "foo_module" in "module foo_module = {..." at
  72.    the bottom of all the mod_*.c files).
  73.  
  74.    LoadFile links with additional object files or libraries which may
  75.    be required for some module to work.  Filenames are taken relative
  76.    to ServerRoot unless they begin with '/'.  Note that for some
  77.    reason, "LoadFile /lib/libc.a" seems to be required for just about
  78.    everything.
  79.  
  80.    NB that DLD needs to read the symbol table out of the server binary
  81.    when starting up; these commands will fail if the server can't find
  82.    its own binary when it starts up, or if that binary is stripped.
  83.  
  84.    Sample usage:
  85.  
  86.      LoadModule ai_backcompat_module modules/mod_ai_backcompat.o
  87.      LoadFile /lib/libc.a
  88.  
  89.    (assuming mod_ai_backcompat.o is in fact in the 'modules'
  90.    subdirectory of ServerRoot).
  91.  
  92.  
  93.